import request from "@/utils/request";

// 查询角色列表
export function listRole(query) {
  return request({
    url: "/system/role/list",
    method: "get",
    params: query,
  });
}

// 查询角色详细
export function getRole(roleId) {
  let url;
  if (roleId) url = "/system/role/" + roleId;
  else url = "/system/role";

  return request({
    url,
    method: "get",
  });
}

// 新增角色
export function addRole(data) {
  return request({
    url: "/system/role",
    method: "post",
    data: data,
  });
}

// 修改角色
export function updateRole(data) {
  return request({
    url: "/system/role",
    method: "put",
    data: data,
  });
}

// 角色数据权限
export function dataScope(data) {
  return request({
    url: "/system/role/dataScope",
    method: "put",
    data: data,
  });
}

// 角色状态修改
export function changeRoleStatus(roleId, status) {
  const data = {
    roleId,
    status,
  };
  return request({
    url: "/system/role/changeStatus",
    method: "put",
    data: data,
  });
}

// 删除角色
export function delRole(roleId) {
  return request({
    url: "/system/role/" + roleId,
    method: "delete",
  });
}

// 导出角色
export function exportRole(query) {
  return request({
    url: "/system/role/export",
    method: "get",
    params: query,
  });
}

// POST /system/role/roleMenuClose 角色菜单一键关闭
export function roleMenuClose(data) {
  return request({
    url: "/system/role/roleMenuClose",
    method: "post",
    data: data,
  });
}

// POST /system/role/roleMenuOpen 角色菜单一键开启
export function roleMenuOpen(data) {
  return request({
    url: "/system/role/roleMenuOpen",
    method: "post",
    data: data,
  });
}
